<!-- ##### SECTION Long_Description ##### -->
<para>
+A GtkFileFilter can be used to restrict the files being shown
+in a #GtkFileChooser. Files can be filtered based on their name
+(with gtk_file_filter_add_pattern()), on their mime type (with
+gtk_file_filter_add_mime_type()), or by a custom filter function
+(with gtk_file_filter_add_custom()).
+</para>
+<para>
+Normally, filters are used by adding them to a #GtkFileChooser,
+see gtk_file_chooser_add_filter(), but it is also possible
+to manually use a filter on a file with gtk_file_filter_filter().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
-
+#GtkFileChooser
</para>
<!-- ##### STRUCT GtkFileFilter ##### -->
<para>
-
+The <structname>GtkFileFilter</structname> struct contains
+only private fields and should not be directly accessed.
</para>
<!-- ##### STRUCT GtkFileFilterInfo ##### -->
<para>
-
+A <structname>GtkFileFilterInfo</structname> struct is used
+to pass information about the tested file to
+gtk_file_filter_filter().
</para>
-@contains:
-@filename:
-@uri:
-@display_name:
-@mime_type:
+@contains: Flags indicating which of the following fields need
+ are filled
+@filename: the filename of the file being tested
+@uri: the URI for the file being tested
+@display_name: the string that will be used to display the file
+ in the file chooser
+@mime_type: the mime type of the file
<!-- ##### ENUM GtkFileFilterFlags ##### -->
<para>
-
+These flags indicate what parts of a #GtkFileFilterInfo struct
+are filled or need to be filled.
</para>
-@GTK_FILE_FILTER_FILENAME:
-@GTK_FILE_FILTER_URI:
-@GTK_FILE_FILTER_DISPLAY_NAME:
-@GTK_FILE_FILTER_MIME_TYPE:
+@GTK_FILE_FILTER_FILENAME: the filename of the file being tested
+@GTK_FILE_FILTER_URI: the URI for the file being tested
+@GTK_FILE_FILTER_DISPLAY_NAME: the string that will be used to
+ display the file in the file chooser
+@GTK_FILE_FILTER_MIME_TYPE: the mime type of the file
<!-- ##### USER_FUNCTION GtkFileFilterFunc ##### -->
<para>
-
+The type of function that is used with custom filters,
+see gtk_file_filter_add_custom().
</para>
-@filter_info:
-@data:
-@Returns:
+@filter_info: a #GtkFileFilterInfo that is filled according
+ to the @needed flags passed to gtk_file_filter_add_custom()
+@data: user data passed to gtk_file_filter_add_custom()
+@Returns: %TRUE if the file should be displayed
<!-- ##### FUNCTION gtk_file_filter_new ##### -->